import { jsx as _jsx } from "react/jsx-runtime";
import { createFromIconfontCN } from "@ant-design/icons";
import classNames from "classnames";
const RenderIcon = createFromIconfontCN({
    scriptUrl: "./cpas-ui/iconfont/iconfont.js",
    //scriptUrl: "//at.alicdn.com/t/c/font_3593961_ievbcl7cb6.js", // 在 iconfont.cn 上生成
});
/**
 *  #### 介绍: 该图标库依赖 iconfront; 项目中所需要的图标必须入 iconfront
 *  使用规范:
 *  1. 所有图标都会走统一的 iconfont 管理 ,  iconfont 由 UI进行管理
 *  2. 由于为了兼容dev组件， 目前通用采用字体图标模式
 *  3. 图标由 _iconfont.less 和  CpasIcon 组件进行统一管理
 *  4. 应用端使用图标时应先和UI确认，得到图标的使用名称
 *  5. png , banner 等图片不归图标库管理.
 */
export const CpasIcon = (props) => {
    const { type, className, sz, color, fontSize, onClick, hidden, rotate, spin, } = props;
    const params = { type, sz, color, fontSize, onClick, hidden, rotate, spin }; // className 会覆盖，应该去掉
    const klass = classNames("sr-icon", className, {
        [`sr-icon-${sz}`]: sz,
    });
    const style = {
        color,
        fontSize,
    };
    return _jsx(RenderIcon, { type: type, style: style, className: klass, ...params });
};
/**
 * 为了兼容express的原色图标
 */
export const RawSvgIconByDevExpress = function (iconName) {
    return `<svg width="1em" height="1em" fill="currentColor" aria-hidden="true" focusable="false" class=""><use xlink:href="#${iconName}"></use></svg>`;
};
CpasIcon.defaultProps = {
    sz: "base",
};
export default CpasIcon;
